package com.settlement.system.model.vo;

import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.settlement.system.common.util.StringUtils;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import com.alibaba.excel.annotation.ExcelProperty;

/**
* <p>
* 客服登记表导入VO
* </p>
*
* @author huangrensen
* @since 2024-03-29
*/
@Schema
@Data
public class SysClientRegisterImportVo implements Serializable {
    @ExcelProperty(value = "日期")
    @DateTimeFormat("yyyy/MM/dd")
    private String registerDate;
    @ExcelProperty(value = "订单号")
    private String orderNo;
    @ExcelProperty(value = "旺旺名、收货人")
    private String receiver;
    @ExcelProperty(value = "支付方式")
    private String payType;
    @ExcelProperty(value = "微信号、支付宝账户昵称")
    private String payNickname;
    @ExcelProperty(value = "支付金额财务")
    private String payAmount;
    @ExcelProperty(value = "收入金额财务")
    private String receiveAmount;
    @ExcelProperty(value = "平台")
    private String platform;
    @ExcelProperty(value = "交易标签")
    private String tradeTag;
    @ExcelProperty(value = "原因")
    private String reason;
    @ExcelProperty(value = "SKU")
    private String sku;
    @ExcelProperty(value = "商品处理方式")
    private String dealType;
    @ExcelProperty(value = "登记人")
    private String registerUser;
    @ExcelProperty(value = "备注说明")
    private String remark;
    @ExcelProperty(value = "其他")
    private String other;

    public boolean isEmpty() {
        // 所有字段都为空
        return !StringUtils.hasText(this.registerDate) &&
                !StringUtils.hasText(this.orderNo) &&
                !StringUtils.hasText(this.receiver) &&
                !StringUtils.hasText(this.payType) &&
                !StringUtils.hasText(this.payNickname) &&
                !StringUtils.hasText(this.payAmount) &&
                !StringUtils.hasText(this.receiveAmount) &&
                !StringUtils.hasText(this.platform) &&
                !StringUtils.hasText(this.tradeTag) &&
                !StringUtils.hasText(this.reason) &&
                !StringUtils.hasText(this.sku) &&
                !StringUtils.hasText(this.dealType) &&
                !StringUtils.hasText(this.registerUser) &&
                !StringUtils.hasText(this.remark) &&
                !StringUtils.hasText(this.other);
    }

    public boolean isMerge() {
        return !StringUtils.hasText(this.registerDate) &&
                !StringUtils.hasText(this.orderNo);
    }
}
